1. Field of the Invention
This invention relates to the field of computer-related systems, and more particularly to a software platform for incorporating content-processing and content-routing intelligence into networks.
Portions of the disclosure of this patent document contain material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office file or records, but otherwise reserves all copyright rights whatsoever.
2. Background Art
Computers and computer networks are used to exchange information in many fields such as media, entertainment, commerce, and telecommunications, for example. Media and entertainment information may include the digitized content of movies, video, audio CD's, radio, newspapers, books, magazines, and computer games. Commerce information includes electronic banking and bill payment, as well as electronic purchases. Voice telephone transmissions and video conferencing are examples of telecommunication information. The exchange of information between computers typically occurs between a "server application" that provides information or services, and a "client application" or device that makes requests of the server application and receives the provided information and services. Multiple server applications are sometimes available on a "service system". A problem with current systems is the difficulty and complexity of delivering the information in the format required by the different client applications or devices, and the difficulty and complexity of determining the best route the information should take to move from a server application to a client application or device. This problem can be understood by reviewing current systems.
Software service systems have been developed to provide mechanisms for client applications and devices to access the services of a server application. However, these service systems have difficulty in servicing the requirements of a very large number of client applications and do not provide re-usability of information processing and content routing technology for applications other than those for which they are specifically designed. Also, there are many different types and formats of information to be transmitted over the same network. Current systems do not provide arbitration or scheduling prioritization based on user or application requirements between information types being transmitted over a network. Further, routing is not based on the actual content of information being transferred. Rather it is based only on certain well-defined, limited attributes such as originator address, destination address, priority, size of object and type of packet of data. Such attributes do not lead to the most efficient transmission of information in mixed usage networks.
Another disadvantage is that client applications must have knowledge of how to communicate with specific server applications to facilitate the location and access of the respective services. This makes the addition of new service applications or devices difficult because client applications must be reconfigured or reprogrammed to recognize the new server applications and to direct service requests to those new applications. There is no mechanism in the service system to allow new services to be added without such reconfiguring or reprogramming.
Another problem is that information to be transmitted may be in one of many different data encoding formats and may be transmitted as bounded data, in the form of objects, files, etc., or as unbounded data in the form of data streams. In prior art service systems, applications using one data encoding format or bounded/unbounded transmission format cannot access the services of another application using a different data encoding format or bounded/unbounded transmission format without the use of a gateway or converter built specifically for that purpose. There is no extensible and re-usable mechanism for resolving communication between the client and server applications, and, further, the underlying service system may support only one transmission format.